Discovery of system with unique passwords by management console

ABSTRACT

An information handling system (IHS) includes controller that performs a method of automating acquisition of link local Internet Protocol (IP) network address of servers. Controller acts as Group manager server (GMS) that maintains an inventory of a respective link local Internet Protocol (IP) network address and public key of each server that is addressable over a local area network (LAN). GMS receives an IP network address and credentials associated with a management console that are used to obtain a public key from the management console. GMS transmits to the management console a GMS IP network address and public key associated with the GMS. GMS encrypts the inventory with the public key of the management console to generate an encrypted inventory. GMS transmits the IP network address and the public key of the management console to each server. GMS forwards the encrypted inventory to the management console to enable secure communication.

BACKGROUND 1. Technical Field

The present disclosure relates in general to managing an informationhandling system (IHS), and more particularly to a management consolediscovering IHSs of a datacenter for secure communication.

2. Description of the Related Art

As the value and use of information continue to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems (IHSs). AnIHS generally processes, compiles, stores, and/or communicatesinformation or data for business, personal, or other purposes, therebyallowing users to take advantage of the value of the information.Because technology and information handling needs and requirements varybetween different users or applications, IHSs may also vary regardingwhat information is handled, how the information is handled, how muchinformation is processed, stored, or communicated, and how quickly andefficiently the information may be processed, stored, or communicated.The variations in IHSs allow for IHSs to be general or configured for aspecific user or specific use such as financial transaction processing,airline reservations, enterprise data storage, or global communications.In addition, IHSs may include a variety of hardware and softwarecomponents that may be configured to process, store, and communicateinformation and may include one or more computer systems, data storagesystems, and networking systems.

IHSs and particularly server IHSs are often deployed in data centers.Customers with medium to large data centers can use a management consolefor monitoring and provisioning of servers. The management console firstneeds to discover the individual servers that are to be managed fordevice configuration, updates, and continued health monitoring.Traditionally, management consoles have used a sweep discovery mechanismwhere a range of Internet Protocol (IP) addresses (“IPs”) is examinedand each device is contacted via a number of protocols for appropriateclassification. Server IP discovery is a non-trivial setup for anadministrator as generally-known discovery is a manual setup. Someprotocol knowledge is required for device classification. The manualdiscovery is also time consuming and prone to errors should there be anynetwork changes.

Current discovery mechanism involves sniffing the network. Inparticular, current auto-discovery mechanisms involves a complicatedsetup. The dynamic host configuration protocol (DHCP) vendor optionconfiguration requires the system administrator to configure the vendoroptions to include a provisioning server IP. Other auto discoverymechanisms require an OS agent to be installed on the server. DHCP basedmethods are currently implicitly insecure due to lack of application ofany encryption/decryption algorithms.

Increasingly, sweep discovery is not an option in many instances. Asweep discovery assumes uniform credentials per protocol for contactingthe devices in the specified network ranges. With a trend toward servershaving unique random passwords, the sweep discovery mechanism isincreasingly a non-viable setup approach. In addition, customers, suchas operators of a datacenter would have to have prior knowledge ofIP-ranges of servers in a network. This requisite knowledge can bebecome more complex to remember with increasing reliance on IPv6 rangesthat are longer than previous IPv4 addresses.

BRIEF SUMMARY

In accordance with embodiments of the present disclosure, an IHSincludes at least one network interface coupled to at least one networkfor communication with a management console and one or more servers. Astorage device has stored thereon group manager program code thatexecutes on a processor. The group manager program code enables the IHSto perform functionality of a group manager server (GMS). The GMSmaintains an inventory of respective link local Internet Protocol (IP)network address and public keys of each server known to the GMS that isaddressable over the at least one network. The GMS receives, via the atleast one network, an IP network address and credentials associated witha management console that similarly receives an IP network address andcredentials associated with the GMS. The GMS requests a public key fromthe management console using the management console IP network addressand credentials associated with the management console. The GMS receivesthe requested public key from the management console. The GMS transmitsthe IP network address and the public key of the management console toeach server that is addressable over the at least one network. The GMSencrypts the inventory with the public key of the management console togenerate an encrypted inventory. The GMS forwards the encryptedinventory to the management console to enable the management console tosecurely communicate with each server using asymmetric key cryptography.

According to illustrative embodiments of the present disclosure, aremote access controller (RAC) of an IHS includes a wide area network(WAN) interface coupled to a WAN for communication with a managementconsole. A LAN interface is coupled to a LAN for communication with oneor more servers. A storage device has stored thereon group managerprogram code that executes on a processor to enable the IHS to performfunctionality of a GMS. The GMS maintains an inventory of respectivelink local Internet Protocol (IP) network address and public keys ofeach server known to the GMS that is addressable over the LAN. The GMSreceives, via the WAN, an IP network address and credentials associatedwith a management console that similarly receives an IP network addressand credentials associated with the GMS. The GMS requests a public keyfrom the management console using the management console IP networkaddress and credentials associated with the management console. The GMSreceives the requested public key from the management console. The GMStransmits the IP network address and the public key of the managementconsole to each server that is addressable over the LAN. The GMSencrypts the inventory with the public key of the management console togenerate an encrypted inventory. The GMS forwards the encryptedinventory to the management console to enable the management console tosecurely communicate with each server using asymmetric key cryptography.

According to illustrative embodiments of the present disclosure, amethod is provided for automating acquisition of link local IP networkaddress of servers. In one or more embodiments, the method includesmaintaining, by a GMS, an inventory of respective link local IP networkaddress and public keys of each server known to the GMS that isaddressable over the at least one network. The GMS receives, via the atleast one network, an IP network address and credentials associated witha management console that similarly receives an IP network address andcredentials associated with the GMS. The method includes requesting, bythe GMS, a public key from the management console using the managementconsole IP network address and credentials associated with themanagement console. The GMS receives the requested public key from themanagement console. The method includes transmitting, by the GMS, the IPnetwork address and the public key of the management console to eachserver that is addressable over the at least one network. The GMSencrypts the inventory with the public key of the management console togenerate an encrypted inventory. The method includes forwarding, by theGMS, the encrypted inventory to the management console to enable themanagement console to securely communicate with each server usingasymmetric key cryptography.

The above presents a general summary of several aspects of thedisclosure in order to provide a basic understanding of at least someaspects of the disclosure. The above summary contains simplifications,generalizations and omissions of detail and is not intended as acomprehensive description of the claimed subject matter but, rather, isintended to provide a brief overview of some of the functionalityassociated therewith. The summary is not intended to delineate the scopeof the claims, and the summary merely presents some concepts of thedisclosure in a general form as a prelude to the more detaileddescription that follows. Other systems, methods, functionality,features and advantages of the claimed subject matter will be or willbecome apparent to one with skill in the art upon examination of thefollowing figures and detailed written description.

BRIEF DESCRIPTION OF THE DRAWINGS

The description of the illustrative embodiments can be read inconjunction with the accompanying figures. It will be appreciated thatfor simplicity and clarity of illustration, elements illustrated in thefigures have not necessarily been drawn to scale. For example, thedimensions of some of the elements are exaggerated relative to otherelements. Embodiments incorporating teachings of the present disclosureare shown and described with respect to the figures presented herein, inwhich:

FIG. 1 illustrates a block diagram representation of an exampleinformation handling system (IHS) that operates within a network,according to one or more embodiments;

FIG. 2 illustrates a communication diagram representation of groups ofservers and a management console, according to one or more embodiments;

FIG. 3A illustrates a communication diagram representation of an initialstate of discovery in a network between an administrator system, amanagement console, a group manager server (GMS), one or more groupedservers, and one or more un-grouped servers, according to one or moreembodiments;

FIG. 3B illustrates a communication diagram representation of asubsequent state of discovery in the network of FIG. 3A, according toone or more embodiments;

FIG. 4 illustrates a communication diagram representation of a networkincorporating role-based access procedures (RBAC), according to one ormore embodiments;

FIG. 5 illustrates a communication diagram representation of a networkincorporating domain token authorization, according to one or moreembodiments;

FIG. 6 illustrates a sequence diagram of a method of establishingasymmetric key secure communication between a management console and agroup of servers, according to one or more embodiments;

FIG. 7 illustrates a flow diagram of a method of group managerfacilitated discovery of servers by a management console, according toone or more embodiments;

FIG. 8 illustrates a flow diagram of a method of adding RBAC to themethod of group manager facilitated discovery of FIG. 7, according toone or more embodiments; and

FIG. 9 illustrates a flow diagram of a method of adding domain tokenauthorization to the method of group manager facilitated discovery ofFIG. 7, according to one or more embodiments.

DETAILED DESCRIPTION

The present innovation enables discovery of network addresses and uniquecredentials or passwords that are not discoverable by sweeping apredictable range of addresses with one standard credential. AnInformation Handling System (IHS) has at least one network interfacecoupled to at least one network for communication with a managementconsole and one or more servers. A storage device has stored thereongroup manager program code that executes on the processor to enable theIHS to perform functionality of a group manager server (GMS). The GMSmaintains an inventory of a respective link local Internet Protocol (IP)network address and public key of each server known to the GMS that isaddressable over the at least one network. The GMS receives, via the atleast one network, an IP network address and credentials associated witha management console. Similarly the management console receives an IPnetwork address and credentials associated with the GMS. The GMSrequests a public key from the management console using the managementconsole IP network address and credentials associated with themanagement console. The GMS receives the requested public key from themanagement console and encrypts the inventory with the public key of themanagement console to generate an encrypted inventory. The GMS transmitsthe IP network address and the credentials of the management console toeach server that is addressable over the at least one network. The GMSforwards the encrypted inventory to the management console to enable themanagement console to request a public key of each server for securecommunication using asymmetric key cryptography.

References within the specification to “one embodiment,” “anembodiment,” “embodiments”, or “one or more embodiments” are intended toindicate that a particular feature, structure, or characteristicdescribed in connection with the embodiment is included in at least oneembodiment of the present disclosure. The appearance of such phrases invarious places within the specification are not necessarily allreferring to the same embodiment, nor are separate or alternativeembodiments mutually exclusive of other embodiments. Further, variousfeatures are described which may be exhibited by some embodiments andnot by others. Similarly, various requirements are described which maybe requirements for some embodiments but not other embodiments.

It is understood that the use of specific component, device and/orparameter names and/or corresponding acronyms thereof, such as those ofthe executing utility, logic, and/or firmware described herein, are forexample only and not meant to imply any limitations on the describedembodiments. The embodiments may thus be described with differentnomenclature and/or terminology utilized to describe the components,devices, parameters, methods and/or functions herein, withoutlimitation. References to any specific protocol or proprietary name indescribing one or more elements, features or concepts of the embodimentsare provided solely as examples of one implementation, and suchreferences do not limit the extension of the claimed embodiments toembodiments in which different element, feature, protocol, or conceptnames are utilized. Thus, each term utilized herein is to be given itsbroadest interpretation given the context in which that terms isutilized.

FIG. 1 illustrates an IHS 100 that is functions within a network 102.Within the general context of IHSs, the IHS 100 may include anyinstrumentality or aggregate of instrumentalities operable to compute,classify, process, transmit, receive, retrieve, originate, switch,store, display, manifest, detect, record, reproduce, handle, or utilizeany form of information, intelligence, or data for business, scientific,control, entertainment, or other purposes. For example, an IHS may be apersonal computer, a PDA, a consumer electronic device, a networkstorage device, or any other suitable device and may vary in size,shape, performance, functionality, and price. The information handlingsystem may include random access memory (RAM), one or more processingresources such as a central processing unit (CPU) or hardware orsoftware control logic, ROM, and/or other types of nonvolatile memory.Additional components of the information handling system may include oneor more disk drives, one or more network ports for communicating withexternal devices as well as various input and output (I/O) devices, suchas a keyboard, a mouse, and a video display. The information handlingsystem may also include one or more buses operable to transmitcommunications between the various hardware components.

Referring again to FIG. 1, IHS 100 includes processor subsystem 104coupled to system memory 106 via system interconnect 108. Systeminterconnect 108 can be interchangeably referred to as a system bus, inone or more embodiments. System interconnect 108 may represent a varietyof suitable types of bus structures, e.g., a memory bus, a peripheralbus, or a local bus using various bus architectures in selectedembodiments. For example, such architectures may include, but are notlimited to, Micro Channel Architecture (MCA) bus, Industry StandardArchitecture (ISA) bus, Enhanced ISA (EISA) bus, Peripheral ComponentInterconnect (PCI) bus, PCI-Express bus, HyperTransport (HT) bus, andVideo Electronics Standards Association (VESA) local bus. Systeminterconnect 108 communicatively couples various system componentsincluding, for example, replaceable local storage resources 110, suchsolid state drives (SDDs) and hard disk drives (HDDs). Within localstorage resources 110 can be stored one or more software and/or firmwaremodules and one or more sets of data that can be utilized duringoperations of IHS 100. Specifically, in one embodiment, system memory106 can retrieve from local storage resources 110 a plurality of suchmodules for execution by processor subsystem 104. The modules caninclude one or more of application(s) 112, operating system (OS) 114, afirmware interface 116 such as basic input/output system (BIOS) orUniform Extensible Firmware Interface (UEFI), and platform firmware (FW)118. These software and/or firmware modules have varying functionalitywhen their corresponding program code is executed by processor subsystem104 or secondary processing devices within IHS 100. For example,application(s) 112 may include a management console application 120, anadministrator system application 122, and a browser application 124,each enabling IHS 100 to operate in one or more of the correspondingroles within network 102.

I/O controllers 126 also support connection to and forwarding of outputsignals to one or more connected output devices 128, such as a monitoror display device or audio speaker(s). Additionally, in one or moreembodiments, one or more input devices 130, such as an optical reader, aUSB, a card reader, Personal Computer Memory Card InternationalAssociation (PCMCIA) slot, and/or a high-definition multimedia interface(HDMI), can be associated with IHS 100. Device interface(s) 132 can beutilized to enable data to be read from or stored to correspondingremovable storage device/s 134, such as a compact disk (CD), digitalvideo disk (DVD), flash drive, or flash memory card. In one or moreembodiments, device interface(s) 132 can further include general purposeI/O interfaces such as inter-integrated circuit (I²C), system managementbus (SMB), and peripheral component interconnect (PCI) buses.

IHS 100 comprises a network interface controller (NIC) 136. NIC 136enables IHS 100 and/or components within IHS 100 to communicate and/orinterface with other devices, services, and components that are locatedexternal to IHS 100, represented as network devices 138. These devices,services, and components can interface with IHS 100 via an externalnetwork, such as example network 140, using one or more communicationprotocols that include transport control protocol (TCP/IP) and networkblock device (NBD) protocol. Network 140 can be a local area network,wide area network, personal area network, and the like, and theconnection to and/or between network and IHS 100 can be wired, wireless,or a combination thereof. For purposes of discussion, network 140 isindicated as a single collective component for simplicity. However, itshould be appreciated that network 140 can comprise one or more directconnections to other devices as well as a more complex set ofinterconnections as can exist within a local area network or a wide areanetwork, such as the Internet.

According to the illustrative embodiment, network devices 138 are IHSsthat are being utilized in a particular role or capacity within thenetwork 102. An administrator system 142, provided as one of the networkdevices 138, can prompt communication between a management console 144,the IHS 100 as group manager system (GMS), grouped servers 146, andungrouped servers 148. For clarity, IHS 100 can represent any of thenetwork devices 138. For example IHS 100 can execute the administratorsystem application 122 to perform the role of administrator system 142.In an exemplary embodiment, IHS 100 is a particular grouped serveracting as GMS to perform the functions and methods described hereinaccording to the present innovation. In particular, IHS 100 facilitatessecure communication of the network addresses and credentials of groupedservers 146 and ungrouped servers 148, enabling the management console144 to initiate requests for public keys from the grouped servers 146and ungrouped servers 148 in preparation for secure communication.

According to one aspect of the disclosure, secure communication amongthe network devices 138 and IHS 100 is enabled by public keycryptography, or asymmetric cryptography. Public key cryptography is anycryptographic system that uses pairs of keys: public keys, which may bedisseminated widely; and private keys, which are known only to theowner. This use of public key cryptography accomplishes two functions:authentication, which is the use of the public key to verify that aholder of the paired private key sent the message; and encryption,whereby only the holder of the paired private key can decrypt themessage encrypted with the public key. In a public key encryptionsystem, any person can encrypt a message using the public key of thereceiver, but such a message can be decrypted only with the receiver'sprivate key. For this system to work, generation of a public and privatekey-pair to be used for encryption and decryption must becomputationally easy for a user to complete.

With secure communication established, administrator system 142 can alsolimit how certain servers can be accessed and utilized by other remotedevices 150. In one or more embodiments, the administrator system 142shares a domain token 152 with the IHS 100 operating as GMS and with thegrouped servers 146 to create a domain. Remote device 150 would berequired to include a corresponding domain token 152 in communicationrequests with the IHS 100 and the grouped servers 146 enabling aresponse. In one or more embodiments, the IHS 100 and network devices138 can perform role based access controls (RBAC). As illustrated,management console 144 executing an RBAC procedure utility 154 assignsan RBAC role 156, such as device manager, to remote device 150.

In computer systems security, role-based access control (RBAC) is anapproach to restricting system access to only authorized users. RBAC isgenerally used by enterprises with more than 500 employees, and canimplement mandatory access control (MAC) or discretionary access control(DAC). RBAC is sometimes referred to as role-based security.Role-based-access-control (RBAC) is a policy neutral access controlmechanism defined around roles and privileges. The components of RBACsuch as role-permissions, user-role, and role-role relationships makethe performance of user assignments simple. RBAC can be used tofacilitate administration of security in large organizations withhundreds of users and thousands of permissions. RBAC is different fromMAC and DAC access control frameworks, but is able to enforce thesepolicies without any complication. RBAC can segregate devices intogroups with access to specific information and keep each group fromaccessing the other group's information.

Processor subsystem 104 can include a central processing unit (CPU) 158that is augmented by a platform control hub (PCH) 160. CPU 158 canexecute applications 112 and OS 114 in volatile memory 162 of systemmemory 106. PCH 160 interfaces with functional components of the IHS100, such as non-volatile (NV) memory 164 of the system memory 106,firmware interface 116, platform firmware 118, and a baseboardmanagement controller (BMC)/service processor 166. BMC/service processor166 can include and execute program code such as a group managerapplication 136 that provides functionality for IHS 100 to perform as aGMS within the network 102. BMC/service processor 166 can also include aremote access controller (RAC) 170 enabling out-of-band communicationfor the IHS 100 by the baseboard management controller (BMC)/serviceprocessor 128 via the NIC 136 and network 140 to the network devices138.

By contrast, the present innovation replaces the manual process ofsystem discovery. RACs 170 enable agent-less dynamic discovery of theservers. The management consoles 144 can get the system information byaccessing RACs 170 even when the OS 114 on the IHS 100 is inactive. Thepresent innovation provides a secure way to discover servers within anetworked without snooping the network. The secure discovery featuresdisclosed herein are scalable, less error prone, and reduces downtime.The present innovation is not limited to unprovisioned “bare metal” newinstallations, and can be back-ported to previous generations of IHSs100. Additionally, the present innovation does not require inputs fromthe user, such as ranges for sweeping, protocol configuration, ornormalized credentials for discovery.

FIG. 2 illustrates a network 200 having a management console 202 thatdiscovers servers 204 a in server group 1 206 a, servers 204 b in servergroup 2 . . . N−1 206 b, and servers 204 n in server group N 206 n.Server group 1 206 a can contain grouped servers, illustrated as GMSserver 1 208 a, grouped server 2 210 a, grouped server 3 212 a, groupedserver N−1 214 a, and grouped server N 216 a. Server group 206 a caninclude ungrouped servers or non-member servers 218 a. Server group 1206 a can contain grouped servers, illustrated as GMS server 1 208 a,grouped server 2 210 a, grouped server 3 212 a, grouped server N−1 214a, and grouped server N 216 a. Server group 1 206 a can includeungrouped servers or non-member servers 218 a. Server group(s) 2 . . .N−1 206 b can contain grouped servers, illustrated as GMS server 1 208b, grouped server 2 . . . N−1 210 b, grouped server 3 212 b, groupedserver N−1 214 b, and grouped server N 216 b. Server group(s) 2 . . .N−1 206 b can include ungrouped servers or non-member servers 218 b.Server group N 206 n can contain grouped servers, illustrated as GMSserver 1 208 n, grouped server 2 210 n, grouped server 3 212 n, groupedserver N−1 214 n, and grouped server N 216 n. Server group N 206 n caninclude ungrouped servers or non-member servers 218 n.

Once management console 202 is in secure communication with the GMSserver 1 208 a, the GMS server 1 208 a provides the IP addresses andcredentials 220 a for the other servers 204 a in server group 1 206 a.Once management console 202 is in secure communication with the GMSserver(s) 2 . . . N−1 208 b, the GMS server(s) 2 . . . N−1 208 b providethe IP addresses and credentials 220 b for the other servers 204 b inserver group(s) 2 . . . N−1 206 b. Once management console 202 is insecure communication with the GMS server N 208 n, the GMS server N 208 nprovides the IP addresses and credentials 220 n for the other servers204 n in server group N 206 n. The IP addresses and credentials 220 a,220 b, 220 n enable the management console 202 to request the publickeys from respective servers 204 a, 204 b, 204 n that already havereceived the public key for the management console 202 from theirrespective GMS server 208 a, 208 b, 208 n.

FIGS. 3A-3B illustrate a network, such as a WAN 300, within whichservers 302 are discoverable. The servers 302 can be part of adatacenter 303. To support a full description of the functionalfeatures, the servers 302 include a non-grouped server 304, a groupmanager (GM) server 308, and a grouped server 310 that are allcommunicatively coupled within a server group (SG) LAN 312 having a LANboundary 318. GM server 308 and grouped server 310 are members of agroup 314 that is interconnected via LAN 312. A GM trust boundary 316separates the non-grouped server 306 from the GM server 308 and groupedserver 310. Outside of LAN boundary 318, an open management console(OMC) 320 operates within an Internet region 322 of the network 300. Anadministrator system 324 is located outside of an Internet boundary 326of the Internet region 322. The administrative system 324 executes abrowser 328 to perform certain administrative functions initiated by anadministrative user 330 via the browser 328. According to one aspect ofthe present disclosure, each server 302 has a RAC 332 that is accessiblevia an IP network address via the WAN 300 for out-of-band communicationto assist in discovery of the respective server and other functions,even if the server is generally powered down.

FIG. 3A illustrates initial operations of discovery of the servers 302.The administrator system 324 is already in secure communication with theOMC 320 and the GM server 308. Using the browser 328, the administratorsystem 324 securely sends the OMC IP network address and credentials 334to the GM server 308. The administrator system 324 securely sends the GMserver IP network address and GM credentials 336 to the OMC 320. The GMserver 308 already has or later discovers the non-grouped server (NGS)IP network address and public key 338 from the non-grouped server 304and the grouped server (GS) IP network address and public key 340 fromthe grouped server 310. In response to receiving the OMC IP networkaddress and OMC credentials 334, the GM server 308 sends a GMS publickey 335 to the OMC 320. The OMC 320 sends an OMC public key 337 to theGM server 308.

FIG. 3B illustrates that the OMC 320 can then securely communicate aninventory request 342 to the GM server 308. GM server 308 responds witha secure inventory response 344. In this instance the secure inventoryresponse 344 can include an encrypted inventory with IP networkaddresses and public keys for the servers 304, 310. The OMC 320 cansecurely send an inventory request 346 to the non-grouped server 304 andreceive an inventory response 348. The OMC 320 can also securely send aninventory request 350 to the grouped server 310 and receive an inventoryresponse 352. The OMC 320 communicates directly with each RAC 332,making use of available asymmetric key based secure transport layer.

FIG. 4 illustrates implementing RBAC procedures in addition to thediscovery abilities illustrated in FIGS. 3A-3B. A network 400communicatively couples a first device group 1 402 with a GM server 404and one or more grouped servers 406. The network communicatively couplessecond device group 2 408 with a GM server 410 and one or more groupedservers 412. Each server 404, 406, 410, 412 has a RAC 414 forcommunicating with management console 416 provisioned with RBAC manager418 via the network 400. An administrator system 420 has RBACadministrative credentials 422 that enable communicating via a browser424 to RBAC manager 418 over the network 400 to assign device 1credentials 426 to a device manager 428 and to assign device 2credentials 430 to a device manager 432. Device manager 428 can utilizedevice 1 credentials 426, such as in a browser 434, to access devicegroup 1 402. Device manager 428 lacks credentials to access device group2 408. Device manager 432 can utilize device 2 credentials 430, such asin a browser 436, to access device group 2 408. Device manager 432 lackscredentials to access device group 1 402.

FIG. 5 illustrates implementing a domain procedure in addition to thediscovery abilities illustrated in FIGS. 3A-3B within network 500.Network 500 includes: a first device group 1 502 having a GM server 504and one or more grouped servers 506; and a second device group 2 508having a GM server 510 and one or more grouped servers 512. Each server504, 506, 510, 512 has a RAC 514 for communicating with an openmanagement console 516, which is provisioned with a domain manager 518.GM server 510 and one or more grouped servers 512 of the second devicegroup 2 508 are provisioned with domain tokens 520 that are required tobe included in communication requests from the open management console516.

FIG. 6 illustrates a sequence flow of a method 600 of establishingsecure communication between an OMC 602 and one or more servers 604facilitated by a group manager server 606, according to one or moreembodiments. Method 600 begins with an OMC IP network address andcredentials, such as a public key, being entered in the GMS 606 by anadministrator system (block 610). The administrator system enters a GMSIP network address, and credentials in the OMC 602 (block 612). The GMS606 requests the public key from the OMC 602 using the OMC IP networkaddress and credentials, as indicated at bidirectional arrow 614. OMC616 validates the GMS request and shares the public key with GMS 606, asindicated by bidirectional arrow 614. GMS 606 determines whether the GMS606 is able to connect to the OMC to get the public key for securecommunication (decision block 618). If not able to connect to the OMC602, method 600 ends. If able to connect to the OMC 602, GMS 606 sendsOMC public key to all available RACs in LAN (block 620). One or moreservers 604 process and store the OMC public key received from the GMS606 (block 622). One or more servers 604 of all available RACs in thegroup send their respective public key to the GMS (block 624). The GMS606 receives RAC public keys (block 626). GMS sends all known RAC IPsand public keys from group and non-group IPs to the OMC 602 (block 628).The OMC 602 stores all IPs and public keys of RACs and starts discoveryprocesses for each IP (block 630). OMC 606 requests RAC inventory fromthe one or more servers 604 (block 632). The one or more servers 606receives RAC inventory request from OMC 602 (block 634). The one or moreservers 604 determine whether the one or more servers are able toauthenticate OMC request for available public key (decision block 636).If the one or more servers are not able to authenticate, method 600ends. If able to authenticate, the one or more servers 604 securely sendRAC inventory to OMC 602 (block 638). OMC 602 saves retrieved inventoryfrom RAC 602 (block 640). Then method 600 ends.

IHS 100 (FIG. 1) performs different aspects of the processes that enablethe one or more embodiments of the disclosure. Generally, methods 700,800, 900 represent computer-implemented methods. The description ofmethods 700, 800, 900 is provided with general reference to the specificcomponents illustrated within FIG. 1.

FIG. 7 illustrates a method 700 of automating acquisition of link localIP network address of servers. In one or more embodiments, the method700 includes monitoring, by a GMS, at least one network and maintainingan inventory of servers that are accessible on the at least one network(block 702). A determination is made as to whether the GMS hasdiscovered a newly added grouped server (decision block 704). Inresponse to determining that a newly added server is discovered, the GMSadds a link local IP network address and public key for the newly addedserver to an inventory that is maintained by the GMS (block 706). Adetermination is made as to whether the GMS has discovered an ungroupedserver (decision block 708). In an exemplary embodiment, thisdetermination is made by receiving a publication from at least oneserver using multicast domain name system service discovery (mDNS-SD)protocol. In response to determining in decision block 706 that no newlyadded server is detected, method 700 also proceeds to block 708 todetermine whether any ungrouped server is identified. In response todetermining that no ungrouped server is detected in decision block 708,method 700 proceeds to block 712. In response to determining in decisionblock 708 that a server is identified that is not grouped, the GMS addsthe IP network address and public key for the ungrouped server to theinventory (block 710). At block 712, method 700 includes receiving, bythe GMS via the at least one network, an IP network address andcredentials associated with a management console. The management consolesimilarly receives an IP network address and credentials associated withthe GMS. In an exemplary embodiment, the GMS performs out-of-bandcommunication by a RAC that has the functionality of the GMS to receivethe credentials and IP network addresses of a management console from anadministrator system via a WAN. Method 700 includes requesting, by theGMS, a public key from the management console using the managementconsole IP network address and credentials associated with themanagement console (block 714). The GMS receives the requested publickey from the management console (block 716). The management consolerecognizes the GMS having previously received the IP network address andcredential associated with the GMS. The method 700 includes the GMStransmitting, by the GMS, the IP network address and the public key ofthe management console to each server that is addressable over the atleast one network (block 718). The GMS encrypts the inventory with thepublic key of the management console to generate an encrypted inventory(block 720). The method includes forwarding, by the GMS, the encryptedinventory to the management console to enable the management console tosecurely communicate with each server using asymmetric key cryptography(block 722).

FIG. 8 illustrates an example method 800 of segregating certain groupsof servers for use only by users having appropriate credentials even ifdiscoverable according to method 700 (FIG. 7). Method 800 begins withmanagement console implementing role-based access control (RBAC)procedures for roles for other devices to access a subset of the serversidentified in the inventory (block 802). Management console enables theGMS to provide specified access to remote devices according to theirassigned role (block 804). For clarity, method 800 is directed tocommunications between remote devices and the GMS of one group ofservers. The management console can similarly enable the servers groupedwith the GMS to provide specified access to remote devices according totheir assigned role. In addition, the management console can enableanother GMS with a corresponding subset of servers grouped with theother GMS to provide specified access to different remote devicesaccording to another assigned role. For example, the roles for the GMSand the other GMS can relate to respectively to different businessfunctions such as finance and human resources. The roles can specifywhat type limitations are placed on the access, such as the ability toread but not write data. With continued reference to FIG. 8, GMSdetermines whether a communication request is received from a remotedevice (decision block 806). In response to determining that acommunication request is not received from a remote device, method 800returns to block 806 to continue waiting for a communication request. Inresponse to determining that a communication request is received from aremote device, GMS identifies a role assigned to the remote device bythe management console (block 808). A determination is made by the GMSas to whether the role of the remote device is authorized to make thecommunication request to the GMS according to RBAC procedures (decisionblock 810). In response to the determination the remote device isauthorized, the GMS responds to the communication request by the remotedevice (block 812). Then method 800 ends. In response to thedetermination the GMS is not authorized, the GMS ignores thecommunication request from the remote device (block 814). Then method800 ends.

FIG. 9 illustrates an example method 900 of segregating certain groupsof servers for use only by users having appropriate credentials even ifdiscoverable according to method 700 (FIG. 7). GMS receives a domaintoken to establish a domain (block 902). For example, the administratorsystem can send the domain token as part of the discovery process.Method 900 includes the GMS sending the domain token to each serveraccessible via the LAN to establish a domain group (block 904). GMSreceives a communication request from a requesting management console(block 906). In response to receiving the communication request, the GMSdetermines whether the communication request includes the domain token,indicating that the requesting management console is domain authorized(decision block 908). In response to determining that the communicationrequest includes the domain token, the GMS responds to the communicationrequest (block 910). Then method 900 ends. In response to determiningthat the communication request does not include the domain token, theGMS ignores the communication request (block 912). Then method 900 ends.

In the above described flow charts of FIG. 7-9, one or more of themethods may be embodied in a controller that performs a series offunctional processes. In some implementations, certain steps of themethods are combined, performed simultaneously or in a different order,or perhaps omitted, without deviating from the scope of the disclosure.Thus, while the method blocks are described and illustrated in aparticular sequence, use of a specific sequence of functional processesrepresented by the blocks is not meant to imply any limitations on thedisclosure. Changes may be made with regards to the sequence ofprocesses without departing from the scope of the present disclosure.Use of a particular sequence is therefore, not to be taken in a limitingsense, and the scope of the present disclosure is defined only by theappended claims.

One or more of the embodiments of the disclosure described can beimplementable, at least in part, using a software-controlledprogrammable processing device, such as a microprocessor, digital signalprocessor or other processing device, data processing apparatus orsystem. Thus, it is appreciated that a computer program for configuringa programmable device, apparatus or system to implement the foregoingdescribed methods is envisaged as an aspect of the present disclosure.The computer program may be embodied as source code or undergocompilation for implementation on a processing device, apparatus, orsystem. Suitably, the computer program is stored on a carrier device inmachine or device readable form, for example in solid-state memory,magnetic memory such as disk or tape, optically or magneto-opticallyreadable memory such as compact disk or digital versatile disk, flashmemory, etc. The processing device, apparatus or system utilizes theprogram or a part thereof to configure the processing device, apparatus,or system for operation.

While the disclosure has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the disclosure. Inaddition, many modifications may be made to adapt a particular system,device or component thereof to the teachings of the disclosure withoutdeparting from the essential scope thereof. Therefore, it is intendedthat the disclosure not be limited to the particular embodimentsdisclosed for carrying out this disclosure, but that the disclosure willinclude all embodiments falling within the scope of the appended claims.Moreover, the use of the terms first, second, etc. do not denote anyorder or importance, but rather the terms first, second, etc. are usedto distinguish one element from another.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the disclosure.As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The description of the present disclosure has been presented forpurposes of illustration and description, but is not intended to beexhaustive or limited to the disclosure in the form disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope of the disclosure. Thedescribed embodiments were chosen and described in order to best explainthe principles of the disclosure and the practical application, and toenable others of ordinary skill in the art to understand the disclosurefor various embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. An Information Handling System (IHS) comprising:at least one network interface coupled to at least one network forcommunication with a management console and one or more servers; aprocessor; and a storage device having stored thereon group managerprogram code that executes on the processor to enable the IHS to performfunctionality of a group manager server (GMS), wherein the GMS:maintains an inventory of respective link local Internet Protocol (IP)network address and public keys of each server known to the GMS that isaddressable over the at least one network; receives, via the at leastone network, an IP network address and credentials associated with amanagement console that receives an IP network address and credentialsassociated with the GMS; requests a public key from the managementconsole using the management console IP network address and credentialsassociated with the management console; receives the requested publickey from the management console; transmits the IP network address andthe public key of the management console to each server that isaddressable over the at least one network; encrypts the inventory withthe public key of the management console to generate an encryptedinventory; and forwards the encrypted inventory to the managementconsole to enable the management console to securely communicate witheach server using asymmetric key cryptography.
 2. The IHS of claim 1,wherein: the first network interface comprises a wide area network (WAN)interface coupled to a WAN for communication with an administratorsystem and the management console; and the IP network address and thecredentials associated with the management console are received from anadministrator system via the WAN.
 3. The IHS of claim 2, furthercomprising a remote access controller (RAC) that includes the processorand the storage device and that is coupled with the WAN at the GMS IPnetwork address for out-of-band communication with the managementconsole, administrative system and a respective RAC of the servers. 4.The IHS of claim 1, wherein the GMS: in response to monitoring the atleast one network: discovers an added server; adds the link local IPnetwork address for the added server to the inventory; encrypts at leastan updated portion of the inventory with the public key of themanagement console to generate an encrypted inventory update; and sendsthe encrypted inventory update to the management console to enablecommunication between the management console and the added server usingasymmetric key encryption.
 5. The IHS of claim 4, wherein: the addedserver is ungrouped with the GMS; and in response to monitoring the atleast one network, the GMS receives a publication from the at least oneserver using multicast domain name system service discovery (mDNS-SD)protocol.
 6. The IHS of claim 1, wherein the GMS, in response toreceiving a request from a remote device for access to the GMS:identifies a role assigned to the remote device by the managementconsole; and responds to the remote device according to role-basedaccess control (RBAC) procedures based on the role assigned to thedevice.
 7. The IHS of claim 1, wherein the GMS: receives a domain token;sends the domain token to each server accessible via the LAN toestablish a domain group; receives a communication request from arequesting management console; in response to receiving thecommunication request, determines whether the communication requestincludes the domain token, indicating that the requesting managementconsole is domain authorized; in response to determining that thecommunication request includes the domain token, responds to thecommunication request; and in response to determining that thecommunication request does not include the domain token, ignores thecommunication request.
 8. A remote access controller (RAC) of anInformation Handling System (IHS), the RAC comprising: a wide areanetwork (WAN) interface coupled to a WAN for communication with amanagement console; a local access network (LAN) interface coupled to aLAN for communication with one or more servers; a processor; and astorage device having stored thereon group manager program code thatexecutes on the processor to enable the IHS to perform functionality ofa group manager server (GMS), wherein the GMS: maintains an inventory ofrespective link local Internet Protocol (IP) network address and publickeys of each server known to the GMS that is addressable over the LAN;receives, via the WAN, an IP network address and credentials associatedwith a management console that receives an IP network address andcredentials associated with the GMS; requests a public key from themanagement console using the management console IP network address andcredentials associated with the management console; receives therequested public key from the management console; transmits the IPnetwork address and the public key of the management console to eachserver that is addressable over the LAN; encrypts the inventory with thepublic key of the management console to generate an encrypted inventory;and forwards the encrypted inventory to the management console to enablethe management console to securely communicate with each server usingasymmetric key cryptography.
 9. The RAC of claim 8, wherein the GMS: inresponse to monitoring the at least one network: discovers an addedserver; adds the link local IP network address for the added server tothe inventory; encrypts at least an updated portion of the inventorywith the public key of the management console to generate an encryptedinventory update; and sends the encrypted inventory update to themanagement console to enable communication between the managementconsole and the added server using asymmetric key cryptography.
 10. TheRAC of claim 9, wherein: the added server is ungrouped with the GMS; andin response to monitoring the at least one network, the GMS receives apublication from the at least one server using multicast domain namesystem service discovery (mDNS-SD) protocol.
 11. The RAC of claim 8,wherein the GMS, in response to receiving a request from a remote devicefor access to the GMS: identifies a role assigned to the remote deviceby the management console; and responds to the remote device accordingto role-based access control (RBAC) procedures based on the roleassigned to the device.
 12. The RAC of claim 8, wherein the GMS:receives a domain token; sends the domain token to each serveraccessible via the LAN to establish a domain group; receives acommunication request from a requesting management console; in responseto receiving the communication request, determines whether thecommunication request includes the domain token, indicating that therequesting management console is domain authorized; in response todetermining that the communication request includes the domain token,responds to the communication request; and in response to determiningthat the communication request does not include the domain token,ignores the communication request.
 13. A method for automatingacquisition of link local Internet Protocol (IP) network address andcredentials of servers, the method comprising: maintaining, by a groupmanager server (GMS), an inventory of respective link local IP networkaddress and public keys of each server known to the GMS that isaddressable over the at least one network; receiving, by the GMS via theat least one network, an IP network address and credentials associatedwith a management console that receives an IP network address andcredentials associated with the GMS; requesting, by the GMS, a publickey from the management console using the management console IP networkaddress and credentials associated with the management console;receiving, by the GMS, the requested public key from the managementconsole; transmitting, by the GMS, the IP network address and the publickey of the management console to each server that is addressable overthe at least one network; encrypting, by the GMS, the inventory with thepublic key of the management console to generate an encrypted inventory;and forwarding, by the GMS, the encrypted inventory to the managementconsole to enable the management console to securely communicate witheach server using asymmetric key cryptography.
 14. The method of claim13, wherein: the first network interface comprises a wide area network(WAN) interface coupled to a WAN for communication with an administratorsystem and the management console; and the IP network address and thecredentials associated with the management console are received from anadministrator system via the WAN.
 15. The method of claim 14, furthercomprising providing out-of-band communication, by a remote accesscontroller (RAC) that has the functionality of the GMS, with themanagement console, administrative system and a respective RAC of theservers to transfer the public keys, IP network addresses, and encryptedinventory.
 16. The method of claim 13, further comprising: in responseto monitoring the at least one network: discovering an added server;adding the link local IP network address for the added server to theinventory; encrypting at least an updated portion of the inventory withthe public key of the management console to generate an encryptedinventory update; and sending the encrypted inventory update to themanagement console to enable communication between the managementconsole and the added server using respective private keys.
 17. Themethod of claim 16, wherein: the added server is ungrouped with the GMS;and the method further comprises, in response to monitoring the at leastone network, receiving the publication from the at least one serverusing multicast domain name system service discovery (mDNS-SD) protocol.18. The method of claim 13, further comprising, in response to receivinga request from a remote device for access to the GMS: identifying a roleassigned to the remote device by the management console; and respondingto the remote device according to role-based access control (RBAC)procedures based on the role assigned to the device.
 19. The method ofclaim 13, further comprising: receiving a domain token by the GMS;sending the domain token to each server accessible via the LAN toestablish a domain group; receiving a communication request from arequesting management console; in response to receiving thecommunication request, determining whether the communication requestincludes the domain token, indicating that the requesting managementconsole is domain authorized; in response to determining that thecommunication request includes the domain token, responding to thecommunication request; and in response to determining that thecommunication request does not include the domain token, ignoring thecommunication request.